The present invention relates in general to data acquisition systems and in particular to a method and apparatus for recognizing when a program running on a processing device has accessed the memory location of a dynamically addressed variable.
Word recognizers generate an indicating signal when a selected data word appears on a bus such as a data or address bus of a microprocessor. Data acquisition systems, such as those used in conjunction with a logic analyzer, often use these indicating signals to start or stop data acquisition. In some applications, where a microprocessor is running a higher level language program, it may be desirable to start or stop data acquisition at some point after the program accesses a particular variable stored in memory. In programming languages where the memory address at which each variable is stored are known beforehand it is necessary only to program a word recognizer to initiate an indicating signal when the memory address associated with the particular variable appears on the address bus of the microprocessor. However, when a microprocessor is running a program written in a language such as Pascal, C or Algol, variables are dynamically addressed in that each program variable is on a memory stack during program operation and its memory address is, unknown prior to program operation. Therefore it is not possible to determine when the program has accessed the variable using a simple word recognizer.
What is needed and would be useful is a method and apparatus for recognizing when a microprocessor has accessed the memory location of a dynamically addressed variable.